package dao

import (
	"time"
)

// 这是 LiMenu 的全局公开dao对象
var LiMenuDao = liMenuDao{}

// 这是 li_menu表 的实体类
type LiMenu struct {
	Id             int       `json:"id" form:"id" v:"id"`                                             // ID
	CreateBy       string    `json:"create_by" form:"create_by" v:"create_by"`                        // 创建者
	CreateTime     time.Time `json:"create_time" form:"create_time" v:"create_time"`                  // 创建时间
	DeleteFlag     bool      `json:"delete_flag" form:"delete_flag" v:"delete_flag" gm:"delete_flag"` // 删除标志 true/false 删除/未删除
	UpdateBy       string    `json:"update_by" form:"update_by" v:"update_by"`                        // 更新者
	UpdateTime     time.Time `json:"update_time" form:"update_time" v:"update_time"`                  // 更新时间
	Description    string    `json:"description" form:"description" v:"description"`                  // 说明备注
	FrontRoute     string    `json:"front_route" form:"front_route" v:"front_route"`                  // 前端路由
	Icon           string    `json:"icon" form:"icon" v:"icon"`                                       // 图标
	Level          int       `json:"level" form:"level" v:"level"`                                    // 层级
	Name           string    `json:"name" form:"name" v:"name"`                                       // 菜单/权限名称
	ParentId       string    `json:"parent_id" form:"parent_id" v:"parent_id"`                        // 父id
	Path           string    `json:"path" form:"path" v:"path"`                                       // 赋权API地址,正则表达式
	SortOrder      float64   `json:"sort_order" form:"sort_order" v:"sort_order"`                     // 排序值
	Title          string    `json:"title" form:"title" v:"title"`                                    // 菜单标题
	FrontComponent string    `json:"front_component" form:"front_component" v:"front_component"`      // 文件地址

}

// 注意:这是 LiMenu 的私有dao对象
type liMenuDao struct {
	Insert func(arg LiMenu) int    //插入一条记录
	Update func(arg LiMenu) int    //更新一条记录
	Delete func(arg LiMenu) int    //删除一条记录
	Select func(arg LiMenu) LiMenu //获取一条记录
}
